﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI.WebControls;
using vudu.Presentacion.Contrato.VU_01_Gestionar_Salones;
using vudu.Logica.Fachada;
using vudu.ClasesDominio;
using System.Text.RegularExpressions;

namespace vudu.Presentacion.Presentador.VU_01_Gestionar_Salones
{
    public class PresentadorEliminarSalon
    {
        public IContratoEliminarSalon _vista;
        private EnlaceLogico _fachada;
        private int _idSalon, _status;

        public PresentadorEliminarSalon(EnlaceLogico fachada, IContratoEliminarSalon vista)
        {
            _vista = vista;
            _fachada = fachada;
        }

        public void EliminarSalon(int IdSalon)
        {
            _status = 0;
            _idSalon = IdSalon;

            Salon miSalon = new Salon(_idSalon, _status);
               // _fachada = new EnlaceLogico();
              
                int seModificoStatus = _fachada.EliminarSalon(miSalon);
                if (seModificoStatus == 0)
                {
                    ocurreError("No es posible realizar la transaccion el salon esta siendo utilizado");
                }
                else
                    ocurreExito();
           
        }

        public void NombreSession(Universidad universidad)
        {
            _vista.usuario.Text = universidad.Nombre;
        }

        public void ponerInvisibleColumnaCodigo()
        {
            _vista.GridSalon.HeaderRow.Cells[4].Visible = true;
            _vista.GridSalon.HeaderRow.Cells[5].Visible = false;
            foreach (GridViewRow row in _vista.GridSalon.Rows)
            {
                row.Cells[4].Visible = true;
                row.Cells[5].Visible = false;
                if ((row.Cells[6].Text) == "Inabilitado")
                {
                    row.Cells[0].Visible = false;
                    row.Cells[1].Visible = false;
                    row.Cells[2].Visible = false;
                    row.Cells[3].Visible = false;
                    row.Cells[4].Visible = false;
                    row.Cells[5].Visible = false;
                    row.Cells[6].Visible = false;
                }
            }
        }

        #region Validaciones y obtencion de valores


        public void ocurreError(String info)
        {
            _vista.Error.Text = "Operación Fallida: " + info;
            _vista.Error.ForeColor = System.Drawing.Color.Red;
            _vista.Error.Visible = true;
        }

        public void ocurreExito()
        {
            _vista.Error.Text = "EL salon fue Eliminado con éxito";
            _vista.Error.CssClass = "transaccionExitosa";
            _vista.Error.ForeColor = System.Drawing.Color.Green;
            _vista.Error.Visible = true;
        }

        #endregion Validaciones y obtencion de valores
    }
}